// JavaScript Document
/* PROJECT : Web Cliente Plus
*	@require MyClass.js
*			 MyAjax.js
*	         MyBoundingHandler.js
*	@autor: Mauricio Sanchez
*	@create: 02-12-2009
*/

MenuSection = new MyClass({
	CLASS_NAME: "MenuSection",
	VERSION_NUMBER: "v 1.0.0",
	
	 /**  
     * Property: name
	 * 	 Nombre de la seccion o submenu.
     * {String}
     */
	 name: 'unknow',
	 
	 /**  
     * Property: title
	 * 	 Titulo de la seccion o submenu.
     * {String}
     */
	 title: 'untitled',
	 
	 /**  
     * Property: onShow
	 * 	 Funcion que se ejecuta inmediatamente despues de mostrar el menu.
     * {Function}
     */
	 onShow: null,
	 
	 /**  
     * Property: sectionContent
	 *	 Objeto que contiene esta seccion
     * {JSobject}
     */
	 sectionContent: null,
	 
	 _container: null,
	 	 	 
	 /** 
     * Method: init
     */
	 init: function(opciones){
		for (var key in opciones) {
			this[key] = opciones[key]; 
		}
		this._container = document.createElement('div');
		with (this._container.style){
			width = '100%';
			height = '100%';
			display = 'none';
		}		
	 },
	
	 /** 
     * Method: show
     * 	 Muestra la seccion.
     */
	 show: function(){
		 this._container.style.display = "block";
		 if ((this.onShow!=null) && (typeof this.onShow=='function'))
		 	this.onShow();
	 },
	 
	 /** 
     * Method: hide
     * 	 Oculta la seccion.
     */
	 hide: function(){
		  this._container.style.display = "none";
	 },
	 
	 /** 
     * Method: appendTo
     * 	 Agrega (append) la seccion a un contenedor especifico recibido por parametro.
	 * Parameters:
	 *	 content {DOMELEMENT} 
     */
	 appendTo: function(content){
		  content.appendChild(this._container);
		  this.renderize();
	 },
	 
	 
	 /** 
     * ABSTRACT METHODS
     */
	 renderize: function(){}
	
});